{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from __future__ import absolute_import, division, print_function, unicode_literals\n",
    "import random\n",
    "import matplotlib.pyplot as plt\n",
    "import tensorflow as tf\n",
    "import IPython.display as display\n",
    "from pathlib import Path"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 检索图片"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "WindowsPath('E:/Datasets/Image Classification/tiny-imagenet-200')"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_root_orig = 'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200'\n",
    "data_root = Path(data_root_orig)\n",
    "data_root"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "E:\\Datasets\\Image Classification\\tiny-imagenet-200\\test\n",
      "E:\\Datasets\\Image Classification\\tiny-imagenet-200\\train\n",
      "E:\\Datasets\\Image Classification\\tiny-imagenet-200\\val\n",
      "E:\\Datasets\\Image Classification\\tiny-imagenet-200\\wnids.txt\n",
      "E:\\Datasets\\Image Classification\\tiny-imagenet-200\\words.txt\n"
     ]
    }
   ],
   "source": [
    "for item in data_root.iterdir():\n",
    "      print(item)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "100000"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "all_image_paths = list(data_root.glob('train/*/images/*'))\n",
    "all_image_paths = [str(path) for path in all_image_paths]\n",
    "random.shuffle(all_image_paths)\n",
    "\n",
    "image_count = len(all_image_paths)\n",
    "image_count"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n01945685\\\\images\\\\n01945685_452.JPEG',\n",
       " 'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n03854065\\\\images\\\\n03854065_494.JPEG',\n",
       " 'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n03980874\\\\images\\\\n03980874_450.JPEG',\n",
       " 'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n02415577\\\\images\\\\n02415577_305.JPEG',\n",
       " 'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n02791270\\\\images\\\\n02791270_215.JPEG',\n",
       " 'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n02814533\\\\images\\\\n02814533_24.JPEG',\n",
       " 'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n02165456\\\\images\\\\n02165456_292.JPEG',\n",
       " 'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n12267677\\\\images\\\\n12267677_215.JPEG',\n",
       " 'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n02226429\\\\images\\\\n02226429_480.JPEG',\n",
       " 'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n01882714\\\\images\\\\n01882714_93.JPEG']"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "all_image_paths[:10]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 检查图片\n",
    "\n",
    "现在让我们快速浏览几张图片，这样你知道你在处理什么："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/jpeg": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/jpeg": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCABAAEADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDM2IiEnJqKa5WC3lmbOyNSzbeuAMmrBQN1OR9Kq3+n3NzHF9kuBDJGxYo4zHMv9x/Y+vOKAJGlZGjAGDI21frgn+QqRQwIBP4CsCPT9QuJ/sYn2QW8eILlckBXHqCMyIp2DAxyx3HA3dLFCqIqfM4UAZY5Jx6nv9amMlJXRUouLsxFU+uTV63dhGRwSRjbtz/+qoRhegH1qVJCvUgDHpmqJL20G0+c7C3RR3Pv696EhMOIvMVyemOmar+d5iAbTkDjPQmn2iySzcOV+bjHQUAcSnjC2jX/AEixuY5M/dXawI9ckj+Va1r4g0meB5EvIxtHKP8AK2cc8Hk/hUOt/DjWfD+J7JjrOmNwWjQeah7Ar/FnPBHfsOM4llYWmolp44iscPDttIVCc43Ht0OPXBrieInHpc7o0KU1dOx0ejFXtSuxN0fyCQLhmX0J7gds9M4q67JF99gKxLJb2CPyogsMQYEkrlmB79cdhx71RuV1G7lZ0V14K85GeSP5qOtb0IOFNRe5z4ianVco7M6aO7hkI2yoc9D61Orq8hBGSo5CkY6V5st3MjMpdg6vtwOSDnpxU0V/dxXR+Zll3FSGwMHpjk1sYnpcLoOEjf3bNXWvrWygyY1Qt94v1/yK5Cz8SQJYkSttmBx7E1RuL+S7Mk81xH5akgIxPTAwP1NAGrFqhksL/wC1z3bRpaDZid8bt6gDAPQ4I+hPWo7i+W5vr+6QkWt3eXF0qEDJy5xn8AM/4VUNvcWOg6jG8TwvLKkW2VTujKB96j3UlMj/AGsVjrdPaXcaSCRo0YoyqMApk5/TNYxj79/66F3tGxuefG7s4ChCu3Z6gf8A6ql84jdN5yKCm4KM43Dv1rJtJr6V7e3tbQzhifKRV3NIfoPbnFV5pI5GWeKQQqNofALR8jofTOD+X1rYg24UtSY5lWMFfmV26A+oA70x9NtZIyJFjlBO44Xlcjn8ep//AFVlpLem3hvYrOY27MUhmETCJjluMnjsRjJ6H0rYttB11rUyJpV80RZeHg2thhxtP8Q+mev5gFOfQNLRJdzyITj7rfd7f/X/AA/CpU0i1jeGQs5AGSCcbjx68jjt7Vn3stxbTra3IeG5d9kkUiFWUKARwcdVwR9DRPeXCTxrEmDF18w8dOMY7cj+VAHrEb6HNf3M5sI7iBPKEO60OzduO8s5UgMx2gnGSEHXglmlaJ4cksLZHsbS7nijxM5ZdzHG1jtBHUjhsDP3uvJvB9oVbe7hbYQsZECJ06IzbyDjOMgfmea1I40uZAqW06qy8nBOzrjgfeBJ5HTpn0EKCTuht3Qtjp9nZxMLDZbK8gZ1t0VCB36D3xwew96lgjiJ811kBTCBArKGJAJ69fr/APrrJe8hWFbe4tpJnRiYI3hVWjKjgZbIBOGPHRTjBHUFtFOYs7hOrkFQvyMfucls7RnkAdhj2NiNEiGORynzsNrcKrMCTypOSf0GPXimwvbp+8jSYOTvOzcoYE4HIA3cDOD2x61hvbDyGmllMrTyMY2nBKoVO0gR8cBgSDwSPTvNdadDG2LcRGFNjSpFKIyBk7vmIGQcjvjgZz2AHzaXoOrXhvLvSvMmYbFkmIJIBOOVc4wT7ZGM9Bh+l6Z4asNQmu91lHdrkOSCgwc9EJwMA4JAHf8ABsulwLCJHiEiQB2V5jlAmBuAYg7R09vlJ6UkkNpPPEssQ+VVJnlhbYEzjKkjjtxk8HpxQB//2Q==\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/jpeg": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "for n in range(3):\n",
    "      image_path = random.choice(all_image_paths)\n",
    "      display.display(display.Image(image_path))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 确定每张图片的标签"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(['n01443537', 'n01629819', 'n01641577', 'n01644900', 'n01698640'], 200)"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "label_names = sorted(item.name for item in data_root.glob('train/*') if item.is_dir())\n",
    "label_names[:5], len(label_names) "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "label_to_index = dict((name, index) for index, name in enumerate(label_names))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "First 10 labels indices:  [16, 126, 134, 51, 65, 70, 36, 199, 39, 12]\n"
     ]
    }
   ],
   "source": [
    "all_image_labels = [label_to_index[Path(path).parent.parent.name] for path in all_image_paths]\n",
    "print(\"First 10 labels indices: \", all_image_labels[:10])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 加载和格式化图片"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'E:\\\\Datasets\\\\Image Classification\\\\tiny-imagenet-200\\\\train\\\\n01945685\\\\images\\\\n01945685_452.JPEG'"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "img_path = all_image_paths[0]\n",
    "img_path"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<tf.Tensor: shape=(), dtype=string, numpy=b'\\xff\\xd8\\xff\\xe0\\x00\\x10JFIF\\x00\\x01\\x01\\x00\\x00\\x01\\x00...\n"
     ]
    }
   ],
   "source": [
    "img_raw = tf.io.read_file(img_path)\n",
    "print(repr(img_raw)[:100]+\"...\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "将它解码为图像 tensor（张量）："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(64, 64, 3)\n",
      "<dtype: 'uint8'>\n"
     ]
    }
   ],
   "source": [
    "img_tensor = tf.image.decode_image(img_raw, 3)\n",
    "\n",
    "print(img_tensor.shape)\n",
    "print(img_tensor.dtype)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "将这些包装在一个简单的函数里，以备后用。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "def preprocess_image(image):\n",
    "    image = tf.image.decode_jpeg(image, 3)\n",
    "    image = tf.image.resize(image, [64, 64])\n",
    "    image /= 255.0  # normalize to [0,1] range\n",
    "    return image\n",
    "\n",
    "\n",
    "def load_and_preprocess_image(path):\n",
    "    image = tf.io.read_file(path)\n",
    "    return preprocess_image(image)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5, 1.0, 'N01945685')"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAPsAAAEICAYAAACZA4KlAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nO29eZyc1XUm/Jyq6qrq6n3fW619RQsICSGQwCCMV7DBNo4dy7Ed4tiJne/LjE2WScaeLxNPZmJ78mUztonxDsF2wBiwQUaAQAK1JLS21la3et/3rl6q6s4fVf2ecy5qSRjUYlz3+f300+2+t966deu9/Z5zn3OeQ8YYODg4/PbDd6Un4ODgMDdwm93BIU3gNruDQ5rAbXYHhzSB2+wODmkCt9kdHNIEbrM7OKQJ3GZ/i4KImoioi4iyxO8+RUQ7U+06InqWiMaJ6DgR3SrGVRDRY0TUTkSGiOqsa1cR0aNE1E9ErUT06VnmsD31+k+J332ciOJENCr+3WS97h4iaiCiMSI6Q0Q3ir4PpvpGiOgYEd0p+v4rEU1b117wm66hg4bb7G9tBAB8fpa+HwE4AKAIwF8AeISISlJ9CQBPAbhrltd+H8BZAGUA3gXgvxPRzXIAERUA+DMAR8/z+t3GmGzxb6d43TYA/wPA7wHIAbAFQGOqryr13v8vgFwA/xnAD4moVFz7IevajbN8BofXCbfZ39r4nwD+ExHly18S0RIAVwP4a2NM1BjzEwCHkdrcxpguY8w/A9hrX5CIsgHcBOBvjDHTxpiDAB4B8Alr6N8C+AcAva9zzl8C8GVjzB5jTMIY02aMaUv1VQMYNMY8aZL4BYAxAAtf53s4/AZwm/2tjXoAOwH8J+v3KwE0GmNGxO8Opn5/MZD1/0x7lfcD0QYA6wH86yzXWEdEvUR0koj+CxEFUq/zp15XQkSnUy7CPxJRpvg8DUT0XiLyp0z4SQCHxLXfk3IvjhLRH17C53G4RLjN/tbHXwH4Y2GiA0A2gCFr3BCSZvMFkfoD8SKA/0JEYSK6GkmLIAJ4G/afAfyxMSZxnks8j+QfhtLU6z6MpDkOJN2CDAB3A7gRwFoA6wD8Zeq94wC+C+CHSG7yHwL4A2PMWOr1DwNYDqAEwO8D+Csi+vDFPpPDpcFt9rc4jDFHADwO4D7x61EkfV6JXAAjuDR8BMB8AC0A/gXADwC0pvo+A+CQMWb3LPNpNMacTZnohwF8GcnNDQDR1P//vzGmwxjTC+CrAN4JAKlDxL9D0o0IAtgK4FtEtDZ17WPGmHZjTNwY8xKA/y2u7fAG4Tb7/x34aySfdFWpn48CWEBE8km+Buc/THsNjDHNxph3G2NKjDEbkTzkeyXVfQuA9xFRJxF1ArgewN8T0T/OdjmkXAJjzACSfzRmS6VcC+B5Y0x96o/FXgAvA7h1lvHetR3eBBhj3L+34D8ATQBuFT9/E0AfgJ2pn/cA+F8AwgDeB2AQQIkYHwaQheSGWQogLPqWI2nyBwF8FMlDuJJUXz6AcvHvJSRPz/NS/e8AUJZqLwNwBMmDwplrfxnJg8FSAAUAXgDw31J9W1PvtTb187rUZ7ot9fMdqdcQgA0A2gBsv9LfxW/Lvys+Afdvli/mtZu9BsCE2Ox1SB7eRQGckGNT/cb+J/r+BEAPkifhuwCsv8A8dgL4lPj5fwHoSr22MbW5M0R/BpI+/yCATiRP9OUfmj8CcBpJl6MRwJ+Kvh+lNv8ogOMAPnelv4ffpn+UWmQHB4ffcjif3cEhTeA2u4NDmsBtdgeHNMEb2uxEdDsRnUhFS9138Vc4ODhcKfzGB3SpSKuTALYhya3uBfBhY8yx2V6TmRkyubnJyEm/P6D6fCTo1AvMSY/TffFEnNvT06pPDg0Gg/z7hL5ILM6vm56Oqb5wKMTzCGR47YxgWI0bGR312lmRLNUXyODPPT01ZfXxNWXwWjweV+OGBge9dklJieqbmJzw2iHxOeW1AcAk+Po+n/6bPzHB1wiKzxyL6XmEw/pzS4yJNYjFeR2Hh4bVuNIyzoGZFO8LAEVFxV67v6/Pa2dlZ6txWVm8xgNiHAAMDg2JcRFuRyJqnCTzm5qbVZ/83v3WOgbEfVBQUOC1p637b3x83GvHEzowMRDgeyIUFveYX38vJO59eQ8DQDSajGfq6enH8PDYeWMTAuf75SViA4DTJpWVREQ/RpInnXWz5+Zm4iP33AQAyMvLU32ZGfwh7Y1KYj9mBnkc4nozjo2Nee2+rk7VF4vx2Pm187z25OSkGtfT3+O1u7u7Vd+iRYu8dk4B36QV81eocTt2vui1N2xYr/qKi/kG7mhvVX1lZWVee3qa5zU4OKDGPf744177Dz79+6rv9MkTXruuro6vXa7/KMzcHAAQiehNe+Lkaa9dW8vXGBjUG3XJkiWYDXt28xr0iQ34zK+eVuM+97nP8dxPnFR9H//4x73297/3Pa+9adMmNe7ajdd57Ye+/33V9/hjP/fa12281mtvWL9OjSPwBvzU7/+B6lu8uM5rF5WUq77iUl7Xu97/Ia/d3t2lxu07sN9rD42Pqr7i4kKvvWjJYq+dlasfFH6/32vXzKtWfceOJbfdF7/wNcyGN2LGVyEZbjmDVnCElwciupeI6omoPhqdsrsdHBzmCG/kyX4+U+E19rcx5n4A9wNARXmhyQwlnyJxy0QeGmcTbkKYPADgF1ZPtjCLM8PalAkJk6q6Wv/lO3v2rNd+8sknvXbdQq2NIC3ajRs3qj5pmklzTloNAPCOd7zDawcC+u9pfj5nq4ZD2iSUWLJk9XnfFwDWreOnUld3h+qrq+PPMzbGofJ7dp9V4woK2bKasMznFSs5ee7U6SavvXu3DpfPEGtQVFSk+iIRNrUXLuQM1hdf2KXGPffcc157zaqrVN/DDz/stbds2eK17e/2ew884LUrKytV3913c2j9saOHvba0bADgG9/4F6+9detW1Vc9r9Zrr75KWwRrr+afG46zZVJYWKjG9fZypnDt/DrVBx9vm6eeesprr1mj14MCvOUszwuT0eR3eP7cpdRrZu25OFqRjOqaQTWA9jdwPQcHh8uIN7LZ9wJYTETziSgI4B4Aj70503JwcHiz8Rub8caYGBH9EYBfAvADeMAYc0lZVw4ODnOPOY2NrygrMNs/kpQ6s983IeiIhOXP++I81i+clQyLvgvKny9wfRLH+5L2ALSvFbf8n8zMTG5ns++9fK0+HR6bYB+7rKRU9TULWicvX2tNSH/+yBEWb1m6dKka19TE/nckS5+kNxxlMkSe8q5cqUVsDh856LWfeOIJ1bf5BvaP9+3neTQ2N6lx5eKz2SfzZ07xif61G67x2vZ6yPOCkcGhWftKS/hMwD6NrypnFuOll15Sfa8eOMDzb+Q5VVVWqHGbNvH5zNmzmnorL+cT+Ju23qL6HvjOv3ntt9/+Tq89OKKZiwxBle3aredYX1/vtbe9/TavXVparMadPM1My8zp+wyKU+vzjW8+jrb23vNSby6CzsEhTeA2u4NDmuCNUG+vG/6AH0X5ySgjm65KiOis17gWoi82xSZygPTfKh0Zp01wRZv52coZi2qab3EJm05RK+AmO5uVoAIhNumzc3TwQ3YeB/40n21SfeFMnqMd/SbpmYiI8Ors7Jx13LyseapPRrV1d/eK9nNq3IIFdV779re/U/X96pkdXnvjdZu99tab36bGdbYz+ZJhRZa1tXFf/1P9Xvvtt92mxp05c8prkxXNmJvL6z0yzFGD0hwHgKpyNsklxQoAG67lQJrbbmNBHLIMXRL01/S0jhSUUXgZIb1lJLX388fZHbIpQOPjN/zlE0+qPhl0VF3JLkPhls1q3Mply7x2VbkO7nn55ZcBaHfVhnuyOzikCdxmd3BIE7jN7uCQJphTn91HPmSGkj7rWEyHgE5MsO88E/o3A+mn+4WzJbOdACDgZ1+5pV37ufPmsW8rs9LycgvUuH0HmJLKztXU2PjYGa9dUcPBg5l5mk7KyhahqJP6TCAofL6REa38HBbhvwsWcNjrwIBOhJFU0C9/+Ut9fXFukZXN5wqHDx9W40438mfJtrLI1q65msed4upLkRytXi2TmQaHdXLH8hVezQnMX8BrPzGp8yOCImOwp1OH/ra0cOrFlhvZf83P1/PY8yJTWf6AdsaPHOPPfcs2rnC1a9fzalxrKycl3fGeO1Xfjmd/7bWnrPv2hV0c/iuTnOxzFnk+s/1jH1N9J040eO1169bwtX+9U427/R1v99p7dr2o+p577lkAwMiwpvwk3JPdwSFN4Da7g0OaYE7N+EQ8hpGBJIViCzKYuIhws5g3abpLoQU7c04KBEizHdB0nnzvScssq67mDKewiJgDgHZhZp4UOd9TCU07+fxsStfU1Ki+ri7Ocw5bWXtyzjJC6uhRHYUsI+hkRhmgqZeQEF1YMH+RGiej9Wy6Zli4OeMTvMaT0zrCrauTc/8ldQUAFaUc1VZSzO24RblKym7+/Pmqb7CPqUMZGXfnne9V40A8/76+QdW1f/8+r71mDWcSzlug748zYk3/7mt/r/o+85nPeG0780/SoEePsjn+0Y9+VI2TkZPl5drtW3g705FSk2HViuVq3JOPc27+szt2qL4Z1zQenz0i1j3ZHRzSBG6zOzikCebUjDcJg+mp5El7xNIAy5VRaHFtVhrDZnzAx9I8xtJEkxJTdhSejNibN4/NxTbrBFjOy9Ztu/12FqWYivEcWzp0CfNlS9n8arb0zFav4oQUOwmnoYHNQDn/pqYmNS4ri0/POzr0qa80z1ev5pPdtg4tNRAX16+wor3ONfPJtNSB8we02yHPvXNz9Yl+SGjtDQ0x6xDJDGE2nDypZakWLuTvSerOtVvfWbM4tbdlxtauXeu1v/sDlqyatiTNPvKRj3jtgkId2ZghpNAmpvTrliznqLbuPo4U/LfvPqjG3fMBjrSTp/YAkCEETvp6+F6y3dTKCo4UXLlcS6FNx5MsR8fO45gN7snu4JAmcJvdwSFN4Da7g0OaYG7FK0rzzO/dfT2A80S/iQw2WwDRT+z/5eRwVFvQEq+YEjrsvgztX0pfLiboifIq7a/KCLRlyzX1MTHF1zjXyn5jwvjVuGwRlWevr/zcU5Zu/P79LDfc1cMy1lVVWrTXlriWkOtz9Bj7b/Y8pEjHyy/vVX0f/sjv8g9i7Q8e1FF4737nu7z24FC/6hvq50yu0jL2gaXUNQBU1/D6x6dtHX1e13AG3x+NZ3XWW3EhC1s0NGiaskLIc/cPcSTitCVMIrP0llvf+7xqpuleeOEF1ZcjoiVvvYWFLWy/vKyY1+DAgX2q78YbrvfaR47wGscsodGdOzmST0qNA0zP7j89ipHxmBOvcHBIZ7jN7uCQJpjzRJhwRjLxITqqdbt9gsixaTlZBWZ6gs2XvuEeNU5GH0mhCQCoquVItqhyE7Q5l5fHZrCtyR4RJnhIaL53dumSQ6WlnKhiJ7GQMB9tTbeoSAbqEpTaiQZNp1SLija2pvzeenYFMjN5vjKpBAA2bOIqKpJGBICKCjatn3zqGa9tRwPueeVlrz1uVTlZKjTppgRFWiM02AHg3Lkmr52IW9GMwsUan+Y5llpVWY41HPHat2y7VfWNj/I9MXmKqb2wJThSWMRRbY89pkWSszKZ9rNdzKIiNs+f+6v/6rU/97k/UuPORc55bamZB2i3rL+f3aECQaMCwLPPPuu1r732GtU3I1riozHMBvdkd3BIE7jN7uCQJnCb3cEhTTCnPjsAEJJ0SlZEC0PICpUwOgxWJmXJcbZvP+v1oDXJpaa37VPLsNqyCp2dNDXJy2VEuOWqlZqqmZziCdsUoyy723BE00TTouS09A2lsAIANIhqp/f+/qdVX5XI2quoYMqupa1NjQuKc5B77tEZcedaeGxtba14jdaobxeCk3YJYXlGUFvLtdkK8vRZylIRWjw5oYU+Jif5XGdS+P1hK4y5sIBprt5eTQH+/FH2v9/93vd47b0HXlXjVl7FYhsfukdnrJ0+xaKYZaVab363yMYLizDmsTF9JnXTTSzWadcobBEZd4tFjQD7SXzzLXyNjg59njRzFrL/tBZEkXBPdgeHNMFFNzsRPUBE3UR0RPyukIieJqJTqf8LLnQNBweHK4+LRtAR0RYAowC+a4xZlfrd3wHoN8Z8hYjuA1BgjPnixd6sqqzQfPojyUR927wNi4i3uEXBIMGmbzjIpjRZ4t9Sqy4atSgIodstxSvGJzWVUipokapaHbnm97H5GMoUuu49WjAhK4tdlIpyfY0Tgv559NGfq77GRtZ7W7yUs6luuOEGNa5YCEMM9GtBib4BnktM6LDLyDpAU5OhsDbPh4WenKQRj4qsPEB/F4cOHVJ9K1bw/Ov3MkW3drUuQ9zezi7K1KQ2fWXJ6UiYhURy8/RnuVXo2Z86pSP0ykQE3bETLAgiTW7Avg/0MzBbfNfFxTojTlKkUrO+qVHr128TmvWLF2iRjlWrOIOtUejod3fqTMU+IeYxb56mQWdEXf7ybx9AY3PHbxZBZ4x5HkC/9es7AMzk8D0I4E44ODi8pfGb+uxlxpgOAEj9XzrbQCK6l4jqiah+LDo52zAHB4fLjMt+Gm+MuR/A/QBQXVFsQuGk+e4P6BNVvzDj5UkxABhhdku9NL9V6UbqmY2NWZ3ix7JS/ts0ndDJFxAadwO9WpRCntQvXMxm6srluspqaztHRNniFWMjo7P2XStKFc2bz1LS9im4OLTH0IiOXJsWwh+LFnEUm9TnA3SSjJStBrTEtT+Dv4v5lm7bTCkvAKio0FFhMqmnVyTFHLIYCPlhcrO1a5eTw0km+bncPnv2jBr3rW9+22uvXqPdhNHRcdEWDEeHjr6cFveYreMmRUYiEX0KniXci4WL+J6IWVGJTzz5lNf+0Ic+qPpqx3iO+w6yO1RUkKfGbd66leeY0MIWW7YkXb2//8Z/YDb8pk/2LiKqAIDU/7OnYTk4OLwl8Jtu9scAbE+1twN49M2ZjoODw+XCpVBvPwKwG8BSImolok8C+AqAbUR0CsC21M8ODg5vYcypeEVtVZn5wmc+DOC1uvFB4cOHQ9qfj4tE/eFBppYSU5qiCwoqKBTUxxEyI66qiqOgItk6Cm9yiumf7h7t10Wj3HfNxk1eOztP0zFFQif9iJWx9rWvfc1r33TzLaovJMpAT4jP1tqqKZhaIZh56kyj6iuvZKqvr4+jA/v6NT24Zs06ry1LIwNAZTVHvPX18xrYgglyPezy0zFR5ikjyNGM0TF9dnD8ONN5DZY+fpkon93Zzr6yXVJLimzaOvqdQpSiuIyv9847NYEkBTkf+fefqr76+gNe+8tf/pLqa2nmbDa5Hs/ueFqNkxGGxcWFqo987N/fd98XvPaZ01qAc/t2FhV5ZsevVF9xcVLA4+Of+ks0HG904hUODukMt9kdHNIEc2rGV1eUmj/+5AcAKIYLABARUVxZmZpqgijRNC6iqhQHBa1VbicbyEitQIDNyqJiHelrRBLOuVYt+CAj+1ZfzTRZnKyEHKHbFopoOunRR/ks86pVa1Tfcy9wRdAyISBRv/+AGlddVee1C4T+GgD8agfrlK1cwTRUJFtHnckkIknzAcCBA0yb9Q8w/SgTWgCgro7nYVekzclil0Rq7a1YppOGRkWpqZ4urYEvIySPHGJttrpaHT1WKXTvh4Z0RGFQ0GZPioq3mfl6Pe79gz/02mErorClhe+dHsu1k5p0Gzdu9NpFRdpUzxJRePX7tebfwgWcbNQsxDw+//k/VuMaG1l7b2BQC6bMRCz+3if+HA0NZ5wZ7+CQznCb3cEhTeA2u4NDmmBOffby0kLzu3e9HQBQWqJ1tfNzmP6xhQeN0BOXtFwkZNceE9lsY9qHHBhgH6e/l/2ucJb2z6amOKSypUWHs+YX8BwXLmHfM7tAa89X1nBY6UM//nfVt3wV+9G9PTq/qOkcnxG8tIczxewqvFWVfP3cPC1KOCXCZSNCKDEB7cb19vB6NLVocYzSUv5uEsRrb2da9XRx4KRd9nlIiIKUl3PmXGG+PiORtN/WG25UfUq0Q2TwFRTqz/zTR37itWXNNgAg8bpukTUW9+v16BO+/q9//WvV9/GPf8Jrx6yS0xWi/poUjvyHf/i6GifFTj72ex9TfXtf5jLQd931Pq89PKKFVZqamGb9yEc+bPU1AQD++q//CWfPtjmf3cEhneE2u4NDmmBONegSiQSiqeyrUEhntkm6o7tLmy9RoUleUshmYMiKtJsWAgQRSxwjP5/NxQxB0cWtqLAuYf7b5Zmkbl4og+dra4l3drA5V1CgzdaWJnYNEtbfWhlddvu227z2Y794Qo0bHWUNvfkLNW12/abNXrtfRM35rHLLUiijr1fTSQvq2FzfdD1TjNGozrBrb2eq7Kmn9BzLhLZ7kyjXVLtZC3EUCgps//49qk+uh5yv7b5NRflz/vsPv636tmzZ4rX7B3ndznV2qXGr1/HnvOG661RfbIIj43bv3q36BofZ/L/rrru89n/+0z9V42SGY3xKU8abb7zZa//kZyxoIjMHAeCTn9rutb/03/6H6vvsZ5PUod8/+5Z2T3YHhzSB2+wODmmCuY2gKy8xn93+fgDAwkVah0uetnZ0aNnjDiFZHBLRb4sW6mtkRzhqS5rtANDdyYkUba2cvODz6YPLKnG6arsJgyIJZ1iUr0pk6Ai6Jcv5xP2FF3epvkce4SSL666/XvUdOcIaactXrPTagZBmDOQJdlGxFgmSCT95eSx+YLsa0m2SCRyAdl/mL2CTvqlJ66pVVXFE3fi41vyLCenn06dZV82Wix4ZYTO4rERHA+bnsolfVsR9A/1aPiEsEm16e7R5PiXer72TT+ND2XrdfBnMXKy95mrVNzDAc4zH9H4Zi/L1swSjtGf3y2pcaQW7Nc8/r++J/+9v/sZrZ2byPXz8lE6i2rFjh9d+313vV33f+953AQBNZ7sxEZ1yp/EODukMt9kdHNIEbrM7OKQJ5pR6ywhmoKoy6btMRrUPmRACevPna198nsi26hUikAlo/2lUiCq2WeVxJMU2NS3KLE3aJYfYX5Wa4wBQkMuZTDn57CcGrFJWsoyyLTwhI7AGBRUEAG97G+ufk4+vL6O0ACAqhC1sau/VNo7CM2JNc6wSxWOjfP6QY2XmJeK8VkePcLbZpk2b1Ljnn3/eay9evFj1FRXyWvl9/D31dWuf+sw4r8FDP35O9f33L3/Saw8PcbThUL/+buevZt31FYt0Zl79K1ye6apbmfZr7daU68HD7B//5Ec/UH0lZbz+8+bVqb6gEByJiXOR6zdtUONysjnq76Mf/h3V1yZowCJxNjEV1dRvRwePy/Br+vGDd98DAPjWt76P2eCe7A4OaQK32R0c0gRzXsV1RsA9HteJE9L0tSPXpkVyihRJyLSoManzFcnW5X3GRtiUDITZbA0ktCsgGCNlogFAtkjiGB5lqmlyWkdEHT64z2tnWBVHRf7Ja6IIJQ0aERSMTY8eEuISct0AIEH891u+7plntGaZXMePfUwnZsiEjq4uNh3LyrU7sWIlVz49eVLrpUlBiZCgDvsGtbhEbJrvA5svOnjIKy+Igjz+zoqKtN6ddJXOTWt6MCoKk0RCfI3CPL3273zH23m+Qf29HzzMWu6Fhdpt2vUSR/0ND4voS+t7+cPPft5rNzdp3fvjx3nt/v5/8ve0dctNatxn/+Ber33kVS1o8osnkxGMQyM6UUfCPdkdHNIEbrM7OKQJ3GZ3cEgTzHnW20zYphQ0ALTvaYsXyqw3GSpqX0MWdPP7ta8sxSvCwre3/eF+UZeMLJ99XGQr9YuyxjEze7hpZ6cWUZxXw6G1ts9eLfTaD4uaaDPCBOe7ZkOD9v8KS5ji6e9nuqqjQ4eYSq0J6Zcnr8llj3t6+RpnmrQAZ6momXedlSn2ovBlC0TocodFidZU8znAx7bXqr7SIg73LSvmz/WLx36mxu3Zw/PP1ywibrqxzmv//OecUdY/on3q2999h9duGzyn+lat5Fp+x47pENbtv8siEs3NvD7VtfqzdHbzdxazznhKinl97rrzPTzfXzyuxvmIv7Tmc1pY5R3bkjUInnxGZ+Wp18/a4+Dg8FuFSyn/VENEzxJRAxEdJaLPp35fSERPE9Gp1P8FF7uWg4PDlcOlmPExAH9qjNlPRDkA9hHR0wA+DmCHMeYrRHQfgPsAfPFCFzKJhJf1ZOvMxWNs+kqqDQD8QmyiSGjXlZTNnvE1OqIj47JEBJMsUZyTo6PfjhxhuqfJMpWGRkUUnuDo/H79N1OW/D1x4oTqk65HTU2V6vMLXbQeEWm2f/9BNa6sgqmnwiJttwYEf3X6BFM6JZbmn3SbdlsZWlnZbFYWFIkSTN1a5GKjEMr412/cr/pycpj6lCWtu7q17t7x42wW33O3zuSaEmWP6/fxGhx4VbsduWIJFszXrldeHkfyhSPsFpTGNdH37z/+kdduatG08F/cx2WXciM6A/HYEabAXtzF0XpLLH38VVdxJuQ3vq0FNq69jvXmCwp5vd/1dl0ebGiI3dvSYl3OeUFd8l4KBbX7KnHRJ7sxpsMYsz/VHgHQAKAKwB0AHkwNexDAnee/goODw1sBr8tnJ6I6AOsAvAygzBjTAST/IAAoneU19xJRPRHVj45HzzfEwcFhDnDJm52IsgH8BMCfGGOGLzZ+BsaY+40x640x66W4hIODw9zikqg3IspAcqP/wBgzI7XSRUQVxpgOIqoA0D37FWYuxPW7pH8NaB8yZtVwkwoxkk6yhikf3mLNIL2woMhSyy/WmW0lVRzO2dKlfdS+PqblZPZapqUkIzXUx8e1/yc/dyCgl3/vXq4BJj+zlRyHqirOiJM12wCgIJ99VKlOYyvVSEWUyUmdAVZUzJ+nv5uzDFeuWq3G/eCHD3ntNWu1uos8CzlxnBV4qqv1OcXmzez3P/AdXSr5HduYzqup5O/27g/eqsYd2MO+8tkmfVZz6hSHFq9Zw2cd3X1a1HRwgL+nBbXan//ug9/z2jfdpAUzc/L4fOPu9zN913BSn9VINZ2AX9O9O55mmnLzZs7gKyrUYcF54u8LPSAAACAASURBVHDi0f/Q2va9nUl1J5u2lriU03gC8G0ADcaYr4quxwDMyF1uB/Co/VoHB4e3Di7lyb4ZwO8COExEr6Z+9+cAvgLgYSL6JIBzAD5weabo4ODwZuCim90YswuvTUiawS2z/P688Pt8nohCMKjfOhhmyiA3X9MK0izuFmljk9M6wyciKCMEtGkqI+WiwmUYstyJzBx+76IyneU1Ps3XkMKJMiIPAJavZJolENTRXletWee1u6xoMhnW1iFEKBYt0OuxejVnmzU2Nqk+n6iFLUVAegcG1bi6BdwnM88AoEFQdpEcpiwnrPWuqeNrdPdpSi0oShTHBBU5MaEp1/Fxdi9yc3REYbuI+ssU0YZlpboc8qrV7EK8//11+hpiHXfsYHGMuOUCyopS8yxKdO1aLq0ty0gDwM4XWMBjXIinbLLERIcH+bOsWL5I9T37LOvq9/UyrVhpRYg2n+Fx227WLlXtvGRJsIYmnVUo4SLoHBzSBG6zOzikCeY8EWbmNNpOQAkLWk4mWABAoRArqBCn8eGIFqgYGDq/rjsAFJfyNXwBdhlGxrW5PybMSgroU/biUjarskUk1ZRVFmlSuAZ2so48+a6r1XppR49y8svEBJvWmZnafJ4Q5qI06QGgVySuSF2O8UktCNLfx2sVndQn9WNCHzA6xafWbR2anZBiDXaE3kvn+IS8poa15wcsauG5F3hcRaU2nw8e5pJPZ05zO6Y/CmQh3qMNDapPlnJ62y3sdY6OabdGJlhZljpOnWLd+8JC7UI0neHPozQvjPYT2tu5FsISq2bCosUc0fn4z1m84nvf1yfun/1DPu3/6U/0efgzzyQFNoYvUAbCPdkdHNIEbrM7OKQJ3GZ3cEgTzKnPTkQIpkQiMyzqbWiIKQNZowwA8gvY316yZInXLqvQPt6rhzgzqrhY+5CSFgFxNFPI0kyXZX2jVmRZWESrZYkIsUimJRyZzX3Lli1TfVKIYsWyJapP0pEyEGrFMn2GMSnqi7W1aEEJfwbP5bFfsD+syTVAVrQe0ewjfOKrKS3jz9w/oKPOwiFex46OXtUngwPb21i4wdbAHx3js5XGaKvqi+TyZwkJ4c5IRJ9h9HbxGUMs3qf6+nqf9NpXreb6edVV+ixFiktkZ+uoxMxsXqyQFfIdEF+9LJn30EMvqnHvu4t15KWgJwDk5or7XXxR9pN43z4WMt2yRUfyPfTILlwM7snu4JAmcJvdwSFNMKclm2urSs0XPn0XAGB0VNNVA0JPfO3atapPJvTLSLBCSz98aJRtX1luBwAmp5mvyQgyVxPJ0aWdZV8wqM3zCaEtNzTAFFfAaLOypEjQM5Y+/sd+96Ne++atN6q+NhHtdfok0z0yghAAqqrYfZGUEQD4Mziab/crr3rtMc2uwSc0DkZ17gjCwooNiySfgWF9ESmJb0n9w9h+w8z1wn7188QEU1SF+dpEHhpkuzgvm59L+VYpKz/xPfwaURQxsYSI5Itb85VVtFqtwEZZnuCLX/yo6tu9m12l/QeYHhy2kpc2bWL3pbFJv0GfsOpv2caRcXU1dWpcg7gnyHpOz5+/EADw4H88h86eQVey2cEhneE2u4NDmsBtdgeHNMGcUm9TU1NoaU2GDSoqDMCAoHVk2VoAiE6wgyXL2/b165DHbCEkEMzQ/l//oKCNBPWWZZWOjghOKmKF48qMsoAoqWzi2meX4ZWL5i9QffKz2QIeZSVMsZ09zdcY6NfnKrUcffqaWnIDgsLMyOD5To1oJ9p3gaMaocuBSeL1ycnSzwaZLWdVEIaMQpY0XHRSh5FK57J/UIc4F+TxeUF1NdeOa2/Ruu7hEL95bEp/FwHBI2ZmcTucpz9LZpj7Nl+v778XXmJf/Lvf/7HqkxTY7YJWHB3VIhKyDuGoVYr55ps45Jn8PI+ePn1/l5Ty9X/6Ex1KW16RvClMYvYv1j3ZHRzSBG6zOzikCebUjI/HY56GnG2qS023zm6tCx4VoglSq25iQlNj0qSN52hzTl4/EhGlnUPa/uzuYlqk09KgKxT8TF1dndeWJYMBICD03+1oqU984hNe+9++/U3Vt2zpQq/d28vmblWVzr6TZaMiWbpPartrjTttOkq9DWneAloDMMPP7kpunnZrhocEferTz41pQXWGhDBJbExTY5EsnkjQEgEZ6OfrB4JMdUoNQQDoFXpy8+bpqMpKoUs4JviwoT79vQx0svvjt0o2b9zIrtjulxtV3+mmnV77bhEll1ug7295H0gtfgAYE4IebW1cq+DFl5rUuAV1/LmvWb9C9R0/kSwDFp3QUZ8S7snu4JAmcJvdwSFNMMeJMD4Ew0kT1NaZ8wXYXJRJMYA2gZSW3IQ2TcdEUoUvQ380nziVzRfvHcrUpmN0jE9RB/p1ckdOJpvMYXH93GxtVlaJyqSjVvLIypWcjGFHxkkXReYCDfZrxoAMJ4zY5atkApBfRL8NjWnzMyySO8KWHLWc13SU1yM7bJUWivP145ZMYVScOBszLdr6EpNCVMM242++ZYvX7ulh98RmcublsXu1ePFi1Tck1n/rrbd77X17dKLK2dOs7zYyrl2NiWl2J1ZepRN5ohO8Po89/orXfs97N6lxoUz+nn718z2qLyberrSUn792EGLTOX6vrTfp8lJZWcnrH27SWoAS7snu4JAmcJvdwSFN4Da7g0OaYE59dsB4/mCHpZkeF0LecUvUe0KUcJZRZz6/9ocLBDVmX0NG18ny0FI8AQB6e9lPLynSJeeXLmG976pKIX6Q0P6qFHMcHNA+1IQQnti4caPqO3HssNdetKDWax88qCPGWlqYXsnO1eu4cjVrnBeLefUPaT+3W0QfjgzrSL5IFlN7cq2mJvU1srOYoiK/zmaT6z85JalTfc4idTDHovr6HT18VtPSxBmBy5drf1X6+n2WoKUsEfbpP/qc177f6Ofch+75Ha/9L//yT6ovluBJ5mRq+nFwhN/PJ44cntm5W41bv56/l4T1iC2RfrrhdZxfpzM3+8V39sIu7fdfc8365FxjmnKWcE92B4c0waXUegsT0StEdJCIjhLRl1K/LySip4noVOr/gotdy8HB4crhouIVqcKOWcaY0VQ1110APg/g/QD6jTFfIaL7ABQYY754oWuVFOaYO7clhSkGLEoqM4upCWmOA3ZVVDb1JFUFwKP1ACAjMHt0nSzh0z+kzT5pBi1ZtlT1XXsNR0iVlQsxgjO2mc0mZ46lZ1YrzP/Odv26f/2nf/TaC+rYjJ+yKrAePnrGaxtLpuBtt9zktcPZzN8dO3VWjTt07LjXHhnVpnVVJUd/mWlen4BPk0Gl5ZycYiyPcEAI240IdYwEtLnf3cc0a8zimmQtgXlCyMH+bo8f58/y1a9+VfXdfPPNXrulmaPThnp0dORQH/98rOGI6lsgXKqjRw6qvs4upkG7e9ililni9o2N7JIsXz5P9bULtQwpSlFYoLUHm5v5vfw+iwZNva53bALT8cRvJl5hkpghGjNS/wyAOwA8mPr9gwDuvNi1HBwcrhwuyWcnIn+qgms3gKeNMS8DKDPGdABA6v/SWV57LxHVE1H9xOT0+YY4ODjMAS5psxtj4saYtQCqAWwgolUXe4147f3GmPXGmPXhkG16ODg4zBVeF/VmjBkkop0AbgfQRUQVxpgOIqpA8ql/Qfj8Pi+8c9LSZM8vEKWSLcpLhrr6RUbZiCV4Ls8BTEJTEJJik8IToQzt3sQm+XWtZ7WfS8KfLyhmscvFSzQVlCky0YZGtABBYRmXc/ZbIb3X33iT1+4VmX+TFptSt5B9vlf2Nau+dlGPraScP2dhgQ5PLsxlComMPreoECWR45PsH4+NaUGGHJF9NmqJgPgE5xUTZyuRLJ1RBkGNBTMs+k5kO/YPsG9fWKizxorLOdPtBw89ovqefo711Fcv50yx3g59XpKXzfM6deaM6luynPX9y616dKvX8vdZXsHG7S+ffFKNywjwOUDjGf2d+Uk+c7kdj+vztPXr13vtZ597RfUtWpisGzjYqjNGJS7lNL6EiPJT7UwAtwI4DuAxANtTw7YDePT8V3BwcHgr4FKe7BUAHiQiP5J/HB42xjxORLsBPExEnwRwDsAHLuM8HRwc3iAuutmNMYcArDvP7/sA3PLaV8wOApfDNZaw+NQEm9nhoPbtM4QWel8fR7iNjWjteRJlcucLcQkA6B9kc7q7k0v99PbrCLe2Ni6tW1KidenXruGMtYXClF65Spd4mha2aXRcixhkCp33sai2z6+5gWmi+/+VhS2ys3XUVr8wp0sqdNbbqMgErBR0Y65fG3GLa5kCbG3VNNHZBta/Kyji+ZaU6pJJw0PsRg1bQumhTKYcy/LZFegb0G5NQYTn2DekD3Cr6/j9ikqZ5lt/3WY17kwTm+Q183Q55He8691e24hIuN42HZ2254VnvXZJpT5rvmXb27z2kUOHVN+r++u99tkzTV67tKhSjbt6Lbt2Jq5dRxK6cZLOPHDggBrXLCjdzZtXq77plA5ioFNnakq4CDoHhzSB2+wODmmCOU2EmZ6OeSIEttkno+GkKQ1owQpZNspOdpGRcT6fNpUqhBZZThabmHl5unxSQLxOa7gBPvA8gkJso7lZn96eO9fktbu7tVnVdI5NsaLCMtW3YAFr0C1dxWba4YM6omtShJrF9BLg5X1sgp87x+btpg3aE6ss5/eOjupoxvY2XuNpcSI+aclA+4XscV6eZlAiQhBDRj2OjMyeMFNYoPX0xkQp2/wCZm8aGhrUuA/9DpdkGrFkmifF/PftFckj09qdGBNJPhmkn4G/euYZr916Tp+kx4TmW1BU0CXSn7MgVwhsLNACGzK5q124mGvXaVP9l0/zCXxru67eW1am76XzwT3ZHRzSBG6zOzikCdxmd3BIE8ypz55IJDA2lvSN7GQ7En5S1IrGkllv2k/U9InUU595nxnITDr93tq3zxSUkZ1VNyjKSktRzIF2rRsfCjCdVFWuBQqPHGN/M2rVUV65nKm9VUKYcl99vRq3bBlTfXk5mpbb9cLzPF9BK3b3aooxKOil2jpNVwVCvAYd3ezPj1vZdwHxqLCFLzMzOSJN+uW2qGRCrP9Inz7HWXMNR7ydbeFznKUrtS/bcIzPNNZfqwVBHv+Pn3rtiUmhQx/XtG1+Pt9LVZb/2yeER+1zIknPTk/y+oyP6ujOcXHWNGXVtx4c5O9GipXu2aMFKu64Y6vXfva551RfRjB5RuDEKxwcHNxmd3BIF8ypGR+LxdDX1wdA02SAptdsU0Sa8eEw0zOvMQnFONtUktdvF2a3LaJxITNI0n6y7bNKH3V08PWzsrR5K0eOWxGA9fV7vXY0yhGF8+ZpsQP5fjXzalXfZnBV0dOn2GWwS2oNDfHnXrtaJzEuXMyiHeEsTqxpbe9U44bFNew1kC6VNH39llZdIGDEa3Sfj7jvrve9z2vLiDkAWLOG9d1efmmX6gv6+RpTIjlqckprDxYVcLSerT3fI+oWZIV1Ik+eoHE727UeoBonCgEQaR+2vJxdqn7her1PfGYA6BKafFtv1FGEz+9K6uBf4PZ1T3YHh3SB2+wODmkCt9kdHNIEc6wbD8RnfGeLe5sUNJdd40r60RPCFx+Lar9LCmKUl+sMLVlSWFJIUxdwcmz/0i+yyKRP2j+oa9PVVtfwe41ruqr+FQ55rBYiigBw2223ee28AhZosMNDZRhsuFGfW1RVMnVTIEKBdz73jBrXL/TsJ6yY22CEb4tlK5n+GotqwRFJP9pikdNCvELKH9oCpzLbcXpKzyM6yuGyLSIkubZKn1N0tHAduwV1i1RfsxCZTEzyPbD55rercSVFTL1VlOl7J0NwjEP9+oxndJjnKP1tW5Wpq+v89QoBfd6RLQRKo1FN3xUXMn38b9/R8hG33Ho1AGDXy8cxG9yT3cEhTeA2u4NDmmBOzXi/3+9FKtkUlzSLZRvQNJqk1+xoJhnxJss42ZC0n4z0AnQG0oWuL6m3pqYmNe6M0DAbG9Wm77T4LLZO3lNPPeG1C4o4ist2JyorWeBgeEzTd8tFOerMEEd3hcNav749yjTaoFUyqURE/ckS0LaIRlYWl32211FmDMp1tCnX8XE243Ny9DU6OpnCjE7xOtqRjeVV1V7bTOnIydoqXseRQUE/xvQ1xkZ5DbosYZWcCH9OOyNuQmjqSdO9qEiLlux6/gWvXVygIz/l/SLXVNLMADzaGgBu27Ze9QVT721ne0q4J7uDQ5rAbXYHhzTBnJrx5PMhGEyaJvG4Pkk3oo5Rwj7ZnRYVQcWJu32qGZOiDtbxsKyAKc1KW6BiYuL8LgMA9IpkkomJo1772LFjalxCiFwQ9KnsbKIOgC5jFAxzqR/pWgA6EWbArhIrmAYZqZVlJcxkhPhzt1qRX0uF5LKMMLSrrKrSU5b5GJsWaycqps4kbMwgIKS8Kyv1Kbhc/4wQm7T5OdolWbKAIwyzMvX1s7OZkWjN5mvkWusRiXDf4KAWtiguZLO7r0+XjZLu6KgQ25ARigCwahWvabuVODV/Pici7a1ntsZ2I0tLOdJOnswDwIED+wDo79+Ge7I7OKQJ3GZ3cEgTuM3u4JAmmHPqbSb7x6ZgtFik/hskqTcpVGlfQ76uqkqX6ZFUnLyGpDoA7Sfa/rwSBhR+ly2emZnJ14xO6JJJCUHdxK1zhUkRyebzsS9uR6dJX7/HKj3c1cX0Uk0Nr8HVV1+txuUK/fpzTVaZK7GubSKDr9/S2JfrYdODkh6T5bLtTMVINq+V7W9WVDAFKK93lYjqA4BrhDCjfVYjxUtH5PnDsI56zBDZcT1d+gwjJMpS2XOUaxyZz2cHdk2DjjZexxUrdbmww69yGWgpoiHPdwBdfssukbZ2bbIU+rmevZgN7snu4JAmuOTNnirbfICIHk/9XEhETxPRqdT/BRe7hoODw5XD6zHjPw+gAcCM/XcfgB3GmK8Q0X2pn794oQuYRAITqUiogFXiSZrPMYty6O5lU1WagQaaelu8mJMgXiOAIcbmiigzO1pPRj41NjaqvrPNTV5bRozZpmNBPl8jy4rUmhA65j2WpnxpBUfGKd1xq3STKEKL3j5dPDdXVmcV5vjp06fVOKmdJnX0AU09yfVOGL2m0jy3aUrpAnV0cbRegaUbSKJCb1VNteqTAh4rBR1ouwI7f82lm2wtPCkaUTePTe7SEqssVybfB5s3Xaf6pLsy2N+n+uTnlCZ+br6uRyA9zvY2rfleICrsbtjAkXHTk1qApX+A7xebtu1OuR4xK7pQ4pKe7ERUDeBdAL4lfn0HgAdT7QcB3Hkp13JwcLgyuFQz/usAvgCdfVpmjOkAgNT/ped7IRHdS0T1RFQ/MXUBzRwHB4fLikupz/5uAN3GmH2/yRsYY+43xqw3xqwPB+c8fd7BwSGFS9l9mwG8l4jeCSAMIJeIvg+gi4gqjDEdRFQBoPuCVwEwHeNab3ZW0IVqvSna5aqrzvt7QPsxtu9WU8OCEjIM0X4v6XfZopVSez4nm/2sonxt1PhFiemJSevsIG7OOw7QPuqQ0B0vLCxU4yS9Fo9b2VvCv8zL4zWwKcaGBg739Vna+XKNu4XYok07JUSpYXut4iJzTL533QKtUT8pzjTilniFzO7LF+GhdjirpFxtIclQkO+zpUtZSLOrQ3/vUtDEzu7btm0bX8864zl9hmvrFYrzCIs9xpKl4jwprtcqMclr0C806kPWw5EMr0FPpxYQRXxmva2CDAIXfbIbY/7MGFNtjKkDcA+AXxtjPgrgMQDbU8O2A3h0lks4ODi8BfBGePavANhGRKcAbEv97ODg8BbF63KijTE7AexMtfsA3PJ6Xh+LxdHXm4xiGhrUkWWSysrL1ZS9/HlKmMV9fTqiS2bBBTPCs/ZJc7mrU0egyUgw202Q18wIsCnW26MznGTmnG32FZawGERlldaDl/TgwSMcVZVI2Dr6/LPfr01wmW1VWsLrlputzfhjR0967exMfRssWsylo6WJHLbo0mCuEJsw+rkxOc1rEBGZZ/Dp9xoc4u+QjP4shUI4IyuH3absiP5upZsghSAAYFjo2K0WLsTu3S+qccWl/F5Xr12j+h55+CGvbWv4h0Tp7g7hGtTVbVLjjh5lt0m6VwBw5jh/F9LFDL9GxIVdjSxrDTpT723fsxIugs7BIU3gNruDQ5pgzqu4zpyY2+aGTFyRp96ANm1kMoadmCFPre3EDJm4Ik+sbe00aaZJnTkbMjotI6RN5IIiTuBYsGCB6pOJH/4M/bdWnrLL69sRYyGhdWb/tR4a5Aiv8TFmCYwl0C1yKpAT0Se4faJUVFTIR9ulsrJz+ZpBy+QMBNnMrK3jNc3P19/tkPgubM21iEjWGRbfRa8VxSbZBPLpz5ItzP98cV995jN/qMZ9/etf99pLFy9RfQcPskvV3KyThqSbs3Ahuz9nGk+pcY2NHMFon/aPCdGLpUv41P74US2KsngR9z0nogYBYPnSpKDJ2R79GjXXWXscHBx+q+A2u4NDmsBtdgeHNMGc+uwGxisLVFRaovpyRCZac6vOCpKZRTJbK5ipfTwdgaapvVEhljglorZkVhQAzLMivCRkhN7wMLd9Gfr8Yb4oQbRkiS5HJMUgmiz/r7mVSxVJ/1UKDQIAGT7DCFp0mBR0nJxkf3igV0dciSQvLKitUX0xUZKpspIz0QaGtEjH5LSkQbUfPTHF/nxlNZ/HhDJ1hl1mFvuvti+bIyLSpkXkYU+fjqAbF5rvN954g+qrmcffZ68Q5yzI0ecsAXF+8vgvHlN9kuaSwpE2Vq3h0tc/f1THmMl759y5JtVXmMv34IEDB7z2utWaAvzK3/6N11696irVl58638jImH1Luye7g0OawG12B4c0wZya8T6fz6O6bH03KX4gq4MCOkJKJlzYiRkdHawdJs19+xrSXJQ69PY1y8rKVJ+k9rq6mYaKJ7R5Ox3nz9Lars3nVjFHu/qrjEKrra3jXxudIBIOMRVXN0+b4FUVrL0eExFXPd2dalxxAdNV+VZEl6QmDx7Yz9ewElAyAjyPqFVRV9KRJaIqaqkoLQUAy1ayfpxN7cl7QtKPCxYuVuOCQgO/tk67YTmCbpscZ9fuhRdeUOPqapkefOKJJ1SfpIKnLMpYUrw/fOiHXrulRbuileXsig1b3/uUuAeHRG2C3S/qORYK2rKnS99XK1K1BKSgiA33ZHdwSBO4ze7gkCZwm93BIU0wpz57IJCBkpKkH2z75dnZTK0UF2uqSWaOtbez72kLJsiyxPPnL1R98hrST+/s1L5sXFA8tpBkJMK+fn4+jwsEtIji8Cj7r2ebte82Oc1+dEbICoONMcVTLjTTG8+cUOOMqFMm9d8B7Tu3t57z2gO9mhorEIKIQ1a9uIEh9s1HJ9hHtfX85bmLTWGWlDHdVl7OPvvYuD4jCYb4O6yq0Rllkq6S39/QgP4s66/d6LVl2WTAOiOIsZDF+LA+H9j9EvvHNgW4cSNff2DIWitxziDXx6ZLW1u5dl9NlRbWHBzka0bHOSzY9u0rxWfZeO21qi+QUiG1aylIuCe7g0OawG12B4c0wdya8X4/ilKRcj6jTeTiAjaFByxBBl2KmaO2bHN/0WKmZGQZXEDrlk2LbLlgSGe9xRP83t2WrvvYKJvgUj+urUW7AoPDTPEMD2u6KiBoIrsU8+gYm23r1nI0lq1Bd+YUix3kZOuItJZmNt2bG9vEOP1V1wpTsqNTlxAeGWHTOiCWZ9yqBjwa5XHZuZq+qxKaf/Pn8/dyprFZjfP72HU5sF9nbN14441eu66u1mv//HEdnTZfUHGZIbtENl9/78sveW074m/rDVu9dmenllPs6eKfc/K0iX/4HLtpmzezYMUDDzygxlUIV+bM6ZOqr0hQapLuDfqszyKiDweHdUZmQVGSaiZb/E7APdkdHNIEbrM7OKQJ5tiMJ+TnJM2qglxdZTVXVK8cHtGmb6ZIWggE+MTW59fTzxNll3IsHTufXyTNEJvg8YQWuYhk8euGB/WJrV9U+pwSJ9ZTUR1BV5zH71VWWKn6/CJxRVbstNHRwub4sBVZluHna/R069NhyTTUzGdT2j4tl2zItF8nFOWW8Xp3Cn29SR3Ih9pann95mT5Jr6ji9z6w/4iYhxWVmM/3wV3/z8dUX5uINqwSCTn3fEiPm1fLyUadPa2qLyKiAxcvYynp4ixtjj/9JEfNLV2oxSsGha5f37iOXKsV5vlPf8gRdBGfdkXzwswmTI/q+zZDVvYVctrTFhu0SbgazU2a5dl3qAEAMG77WgLuye7gkCZwm93BIU3gNruDQ5pgTn12IkJohrKyfBoZYWRHAcnIuNw85oLIoiaq59V57ZIy7SuPnmWhiATYT8/M0hFoAeEPG2h/nsTfxpCg7NZfvU6N6x9gLXpZIgkASkRklS12KUUxRwV9N9ivffbmFl6rYqGtDgBFxeybS638nl4r8muYffbJSZ3JFYqLZ4C4Q65ZW6fG+QQvt2iR9nNlieitN97utTu7rMw5P/uyLec0BSij5ur3cvbdkqVaxPP5XawBPzSs6wAsWc60XFiIUUatcshHjh332gVWFmBeLp9hDA/r85n8XL43pyb4vKQgX5+RTEXZl84MWaIrY6L8ssh8nJzWhyQNJ1jEMjqhIxFHRpI0btwqdy7hnuwODmmCS3qyE1ETgBEAcQAxY8x6IioE8BCAOgBNAD5ojBmY7RoODg5XFq/HjL/ZGCNDyu4DsMMY8xUiui/18xcvdpEZMqG8XFNvo+NsSmbn6AqvI0K7fFjoj2WEtRlMorTQdFyXTOqU1UhF5JdtSosAOvgsPS+f0CnzE/f1WxTdmUZ2GYaGtBZeKCLcEMtdkUksupqsrbFfIdp6HaXp3izou/6B2UtlZVl67eFsNp8XLWUKbYGlz1dZLX5OaN34tas5muzMaXY7xxzNawAAEzlJREFUrrlmg36vEJvMkSx9DRnl9upBNuODehhq5zMt19Wlq7NWlPJa9XVxpGPMKlcVEG5ZwqfdtwIhhFJRpd3DKaHzJ7X2+nut6EuR1BOJ6KhHGUkZk4lYVoXe48fZ1QhZ9/4M5SojTG28ETP+DgAPptoPArjzDVzLwcHhMuNSN7sB8Csi2kdE96Z+V2aM6QCA1P+l53shEd1LRPVEVB+dmL3onIODw+XFpZrxm40x7URUCuBpIjp+0VekYIy5H8D9AFBalDN7pXgHB4fLikva7MaY9tT/3UT0MwAbAHQRUYUxpoOIKgB0X/AiAAwIMZOktvILtCBkeQVTBgHLKQsKvfLO4yzkkDGtwwk7RHZShkVvjIowQikSKH1XQNcRG7EENlpbhW68EBzIDmsfTNYby8nTYbsJ4s85ZdEnOTnsv0qRQ7vm3KAQXrBFGuXYAVHSOsMS+MwR9FLEmn8gyGML8vl7WrdW+9uGmKY83qBLJQ8ONHjthx/6mdeuEUKaAJCIs2/b1qFDXZelRBQBoLycKcZDhw+qcQODfI2CIk2l5ufwOh4/xnM62qBrsS2/ioUv/VZGpk98nwFLp//ECb5mdi6HD4+M6LMaVbsvrO/vYuHD+8RZUKG1D0ZH+P6LW4/N3NT3adc4lLioGU9EWUSUM9MGcBuAIwAeA7A9NWw7gEfPfwUHB4e3Ai7lyV4G4Gepv0wBAD80xjxFRHsBPExEnwRwDsAHLt80HRwc3iguutmNMY0A1pzn930Abnk9bxaPG49ia7eytYaFmR0b0Rrk0hTOCDLlYEibLCdOcdTW8ZPaTOsW1Ft1NVM1cSv7KSqyxoqtElW9gk6RmXldfTpqK0dc0+fXppghNhEnpzRNMibWYHKK18A2CaUQRzisdeyyBLU3X5RKrqnR+vIZQkQjNmVFXfnZ4CupkJrv+hrfvP/bXjsQ0G5Tr8iW+9KX/8prV1bVqnHtbUyHLRFmu93XeJrdt6VLl6px/b3Sg9Qm+K+f5dLGMvMvv0h/t0NijXft0nrtJsFU7fqrddmlKlFe6rFHf+q1uzu1S1JWwm7IVLfOTKusZDpvapJNdZtaloZ4m6BVAc6gjMUvD/Xm4ODwfxHcZndwSBO4ze7gkCaYc934wqKkUkk4U2cWhUTY5NlzWpQwMczhhIEg0xRhK9RVlmKurtRhpKUlwvcsY/9pZETTa6Oi/K8dLiv7RgTFtXbt1WrctKgHNm3VBssVmuRhK0y1rY3VR9qE5rsdXllYyBSPrGEHAKXCN5QijZLKA7RSjU3tRbL4u4gLNaCmszorbc2aa7x2/d59qk9mh3V0cAjryVP6LEXOa3XmKtWXncPnETW1HPa6e4/2qWdqEQDA8uXLVZ8vwfPf/dJery39ZACoqK7z2hs2aV4rkWAfu7dbr8HqKs72OyvUYzZu0JmQE0IPfjCuxS5lyHYgwPeLLIkNAAUFHEYe7rZCnFP3ko+c4KSDQ9rDbXYHhzTBnJrxoXAYCxclaZP8Iq2FHshgimrYElPo6WazZ+myFV47M0ubt+MiUyzbMn2DIipMaomPjGkxggSMGKevIakbaX5GrHJBtrijREkRm2KyLBIAnDwlo5CZQrKjoqpF1pvtCkjqLUcIdZIlojExxmblVHRc9YVkRJ3QdT908KgaJymwkKW/f/fdd3vtnh4WaYxka7djYJBpy9OnGlRfWysLTuZks2sxOaHnK8sM7Hj616pv7Rp2sRIi4rJFXBsApkSG2UhUU2PZEXYnEtaWmYjxuhYJF8qmfsuL+X5JQGc7yoxM+X3KUmc2QmEdyReLJ+lBY1GPEu7J7uCQJnCb3cEhTTCnZnwiYRBNiY9P9egEjliCzY9BS/BhTIg6bBUJC5Mxbe53dbG5WFioT59lckpM6I/ZJZiGhB78yIhOqpgQ0U2VFSIKz0qmKS4VVUut035psmVkaFNMmnB1dayzJk/fAW3GRiLafM4U1wiJKrF2uS2ZdCPXBtDVWWOGXYitW3TA5LFjXK7pWlFJFQDGxelzJIvnmJWt3Y6eHjbjJyb0dzEyyveIrLZbXa2ZFuluTVlRifKekNGROUVau69SRFX6LFNYkjIF+ZpFioT4efmF+/7caz/wzX9W4+LTfM9lZenvTFZrlZ9lZES7K1LQpKRERwDOVDS2K+1KuCe7g0OawG12B4c0gdvsDg5pgjn12QGCSdEOLW06Ekn6qxkZOpMrI8h99Qde9dp29JgvwJSG7YtXVTNdNShEHVat0lFbq1YwtdfdpemZYuE7xwSN0zeg6btXXnnFa5eVad9KRqv19Gi9j5oa9kUDwt8+16YzqPzEPvZkh6aJAkIsceky1kzvsK4ho7Zs0UpfBq/rRIzXvqZWC07uO8AikFMxLcSx4VqOrtt/gCPXbMGORULE0iS0v10jvrMzp5u8dtyqgRab5mtGx3XG5LCoLRCdYL85z/LZgxn8OYsK9Xd26hTXqqut1rXqTjVypuWPvvcdr11VrkVTs4WYpp2pKKnVhMiKLC3X9LRM8uwb0IKWMxr7thiLhHuyOzikCdxmd3BIE8ypGR9PxDE0mqTV7HLFCxdz2d1TonQQAHR0srmbLRJLgiEtDJFfwFQZWeZMhyj/O9DLEXk+0sINhQU8rwxLP7xMRLwF/GyK9YvSRICOXLN16QuLmBLMztQRejJqrqyUzcyWFh1xda6pkV+RsEzaKTZV5WcOWkII0nQcn9ClkGiK369LuDz+4GE1LhBgE7myUpu3klIrFkIR8YT1XkKb7cUXX1R92SIysaJCaLI3auEG6c5Vlet5yBLGvSKSr6hCRy9OTbL5X1amrxGPMwXWfq5R9QWDfB+sXcu08Lmz+h4OiHLfkpYEgGCAv4v87DzxGk3Njgvtebus2IwZb9cikHBPdgeHNIHb7A4OaQK32R0c0gRzHC6bQDSVYWW7FqOjHCI7HtW0mV+kNZUKX3Z+nRYvlOVqe3u1CGRfP/8cF7XTcnO0LyvPEnKsUFQYvv7JEyyAODGh6Z5581jo0c5Kk2IWspYZAPT3M51SWcF+oyxnDQB+EWY7Oa5DKqNiLoNCoGLdOi2mkCvCZW26pqmZ3y8sxDNlyCqgQzZluWlAZ+b197PfPzmlqcITYh2zM3X2YHMji5hsvu4Gvl6PXjeZwTc5qtfj0CGmzfLE2UFujn6vkAgR3vnsDtXnJ/7Oyko0HTbQx/fqhPguyst1gaTeHj4/se/9cJDnIv3yrBwdmksBnxin77n2ruT6T8dmr7rknuwODmkCt9kdHNIEc2rGT01NovlcskyQLfBwUuiCR6M6ympEmGm57WxmS3MZADo72VSyKaniAja/fCICTWYjAUDDERZoyM/TZlSmKP0js8hyc3Qk3/LlLOqQGdL0Wms765QdOXJE9U3NQpvZ0YD5+UwxjltmvCxVPSai1bKy9GdZulKIgAS1u9LcyhRVlaC8QPp2aW9nbTlb+61bZJsFAkxPNTdrfcGKCjb3TzRo8QopEPKLX/zCay9evFiNmxZZjLY7ceu2LV57apq/96WLdTSgLA9WXalN8Noa1qs7uO8V1TckyoBt2siZf0PD2tU4Lai3Aat8tsxUkxmHtk6ejL4cHtaZoTMZcY56c3BwuLTNTkT5RPQIER0nogYi2kREhUT0NBGdSv1fcPErOTg4XClcqhn/vwE8ZYy5m4iCACIA/hzADmPMV4joPgD3AfjihS5CBARSJ4orV2qzT2p2FRXrvxvtHWwStgqZ6dCWG9U4KdNcXKwTHZrPcuRTi5BprrROTTOEdHKplSzRKl4nT5gDVoXUc81nvXZWWJv4I+Nsfg3062SG3Fw2z1ta2Ny3ZaDHxYn78Kg250IiqnBImHqHjx5T48qq2ERcsUybiz4R0ZWby2t66LA2swPidLitrU31TQuX5MwZXo/3vU+XBJSfOcOnI8bUnITrNTqsE4+6BUsgo9iS783VZQPCXTlzUn+WiUlmWpqbdPRbLMqsRnRcr3dhPq8PiSSWXz71hBq35ip2mwb6dMJPLMZrZQy7PFKsAtAVhmMxHfk5o+3n82lRGIlLqeKaC2ALgG8nJ2OmjDGDAO4A8GBq2IMA7rzYtRwcHK4cLsWMXwCgB8C/EdEBIvpWqnRzmTGmAwBS/5ee78VEdC8R1RNR/eTk7Bygg4PD5cWlbPYAgKsB/IsxZh2AMSRN9kuCMeZ+Y8x6Y8z6UGh2M83BweHy4lJ89lYArcaYl1M/P4LkZu8iogpjTAcRVQDonvUKKcTjCYyOJX0emf0FAMEg+4m2Tnokk/1QVTZ5eFCNMyLCzRZrgIgSW7xgodcuKdYRUa/s2S3ae1Wf9K02bFzvtU9ZJY3qX9nDcxzSGU5S6HHY8j0lXSjLMy2zShlL+i7b0qyXWVjS53ulXn+WhIhKtIUNe/rY7zt55kmvHQ5rGrG4iI05mwZ9fieXaHr3u+7w2iuW65LHP/rRD732aSFQAQBLlzLFJoVEVq3S5z2D/Xzr2ZRXLM7nG1UlTCPuePpXatxVq9jXD2XoZ2C/KMkdDOg+eV4gozGvuUZHLA4Kf3v+fE37SeqtsbnJa3e+ekCNkwKlwaDO+Jy5X2KxN1Cy2RjTCaCFiGbI41sAHAPwGIDtqd9tB/Doxa7l4OBw5XCpp/F/DOAHqZP4RgC/h+QfioeJ6JMAzgH4wAVe7+DgcIVxSZvdGPMqgPXn6brlPL+bFURARkbSRLd1uLJESaZuK9FBRoxJqsaOXIuIRIrBAU1BSCprfITN5zOnT6pxUvzBThDJz+Wov+wIv7d9FpEh3BBJGQFAPMGHlPPqalSfjJCqEIkwM2vG82ITPC9Pu0OjIqIuki0i7SyBiqPHuNRUX6/Wto9Osvm/fNlKrx0K6aSe4mI24198cbfqk+IKcr5+6M9SkFso2lq3jQwbnoV5PC7H0h6UNGsioSkpaf5fe+0Gr11dpQUqXhV6enYEXVaETebu/i7VF4+xm3D11bxWY6M6Si4mtP6rqzXVKSMne4S5P9Kh36uwUESB+q0yVClNfJ9PR1tKuAg6B4c0gdvsDg5pArfZHRzSBHMsXhHH6GjSX7ZF92TIacu5JtVXIHS8a2tZsEL6Osk+9mn279un+voEfRIRtIVNm20WmUuSxgIAMy1DQDkM87lnd6px5ZUsZlhcrP1QKbBhl2zeJ+YcEkKVthCjFI+0tfMlNblwIVOMCxbpTDEpCHn85AnVV1rKPuvJk3ymsXSppgBlhtWSJUtUn1+InMu1ev7Z59W497znPeI1+tlz/ebrvPYD3/qG17a/9wULuC5eR6cWo1y3bo3XPnWKP8tQf/+s48qt7+yFXTv5B6MzMqdjfL7R1y0oOuvekcKjDVZ238gIh+CWizBmJRQPTaVOTWu6dIb6PHFah/NKuCe7g0OawG12B4c0AV2oXMyb/mZEPQCaARQD6L3I8LmAm4eGm4fGW2Eer3cO84wxJefrmNPN7r0pUb0x5ny8vZuHm4ebx2WagzPjHRzSBG6zOzikCa7UZr//Cr2vDTcPDTcPjbfCPN60OVwRn93BwWHu4cx4B4c0gdvsDg5pgjnd7ER0OxGdIKLTKUXauXrfB4iom4iOiN/NuRQ2EdUQ0bMpOe6jRPT5KzEXIgoT0StEdDA1jy9diXmI+fhT+oaPX6l5EFETER0moleJqP4KzuOyybbP2WYnIj+AfwLwDgArAHyYiFZc+FVvGr4D4Hbrd/chKYW9GMAOvA5dvTeAGIA/NcYsB3AdgM+m1mCu5zIJ4G3GmDUA1gK4nYiuuwLzmMHnAciA8Ss1j5uNMWsFr30l5jEj274MwBok1+XNmYcxZk7+AdgE4Jfi5z8D8Gdz+P51AI6In08AqEi1KwCcmKu5iDk8CmDblZwLkjUA9gPYeCXmAaA6dQO/DcDjV+q7AdAEoNj63ZzOA0AugLNIHZy/2fOYSzO+CkCL+Lk19bsrhUuSwr5cIKI6AOsAvHwl5pIynV9FUij0aZMUFL0Sa/J1AF8AIIvzXYl5GAC/IqJ9RHTvFZrHG5JtvxjmcrOfr+JcWvJ+RJQN4CcA/sQYM3yx8ZcDxpi4MWYtkk/WDUS0aq7nQETvBtBtjNl30cGXH5uNMVcj6WZ+loi2XOwFlwFvSLb9YpjLzd4KQIquVQNon2XsXKArJYGNS5XCfjNARBlIbvQfGGN+eiXnAgAmWd1nJ5JnGnM9j80A3ktETQB+DOBtRPT9KzAPGGPaU/93A/gZgA1XYB7nk22/+s2ax1xu9r0AFhPR/JRK7T1IylFfKcy5FDYl1R6+DaDBGPPVKzUXIiohovxUOxPArQCOz/U8jDF/ZoypNsbUIXk//NoY89G5ngcRZRFRzkwbwG0Ajsz1PMzllm2/3Acf1kHDOwGcBHAGwF/M4fv+CEAHgGkk/3p+EkARkgdDp1L/F87BPG5A0nU5BODV1L93zvVcAKwGcCA1jyMA/ir1+zlfEzGnm8AHdHO9HgsAHEz9Ozpzb16he2QtgPrUd/MfAArerHm4cFkHhzSBi6BzcEgTuM3u4JAmcJvdwSFN4Da7g0OawG12B4c0gdvsDg5pArfZHRzSBP8HeplJCGrXZbQAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "image_path = all_image_paths[0]\n",
    "label = all_image_labels[0]\n",
    "plt.imshow(load_and_preprocess_image(img_path))\n",
    "plt.grid(False)\n",
    "plt.title(label_names[label].title())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 构建一个 `tf.data.Dataset`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<TensorSliceDataset shapes: (), types: tf.string>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "path_ds = tf.data.Dataset.from_tensor_slices(all_image_paths)\n",
    "path_ds"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "scrolled": false
   },
   "outputs": [],
   "source": [
    "AUTOTUNE = tf.data.experimental.AUTOTUNE\n",
    "image_ds = path_ds.map(load_and_preprocess_image, num_parallel_calls=AUTOTUNE)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(8,8))\n",
    "for n, image in enumerate(image_ds.take(4)):\n",
    "    plt.subplot(2,2,n+1)\n",
    "    plt.imshow(image)\n",
    "    plt.grid(False)\n",
    "    plt.xticks([])\n",
    "    plt.yticks([])\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "n01945685\n",
      "n03854065\n",
      "n03980874\n",
      "n02415577\n",
      "n02791270\n",
      "n02814533\n",
      "n02165456\n",
      "n12267677\n",
      "n02226429\n",
      "n01882714\n"
     ]
    }
   ],
   "source": [
    "label_ds = tf.data.Dataset.from_tensor_slices(tf.cast(all_image_labels, tf.int64))\n",
    "for label in label_ds.take(10):\n",
    "      print(label_names[label.numpy()])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<ZipDataset shapes: ((64, 64, 3), ()), types: (tf.float32, tf.int64)>"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "image_label_ds = tf.data.Dataset.zip((image_ds, label_ds))\n",
    "image_label_ds"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "注意：当你拥有形似 all_image_labels 和 all_image_paths 的数组，tf.data.dataset.Dataset.zip 的替代方法是将这对数组切片。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<MapDataset shapes: ((64, 64, 3), ()), types: (tf.float32, tf.int32)>"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ds = tf.data.Dataset.from_tensor_slices((all_image_paths, all_image_labels))\n",
    "\n",
    "# 元组被解压缩到映射函数的位置参数中\n",
    "def load_and_preprocess_from_path_label(path, label):\n",
    "      return load_and_preprocess_image(path), label\n",
    "\n",
    "image_label_ds = ds.map(load_and_preprocess_from_path_label)\n",
    "image_label_ds"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 训练的基本方法\n",
    "\n",
    "要使用此数据集训练模型，你将会想要数据：\n",
    "\n",
    "- 被充分打乱。\n",
    "- 被分割为 batch。\n",
    "- 永远重复。\n",
    "- 尽快提供 batch"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<PrefetchDataset shapes: ((None, 64, 64, 3), (None,)), types: (tf.float32, tf.int32)>"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "BATCH_SIZE = 32\n",
    "\n",
    "# 设置一个和数据集大小一致的 shuffle buffer size（随机缓冲区大小）以保证数据\n",
    "# 被充分打乱。\n",
    "ds = image_label_ds.shuffle(buffer_size=image_count)\n",
    "ds = ds.repeat()\n",
    "ds = ds.batch(BATCH_SIZE)\n",
    "# 当模型在训练的时候，`prefetch` 使数据集在后台取得 batch。\n",
    "ds = ds.prefetch(buffer_size=AUTOTUNE)\n",
    "ds"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## TFRecord 文件"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<MapDataset shapes: {image: (), label: ()}, types: {image: tf.string, label: tf.int64}>\n"
     ]
    }
   ],
   "source": [
    "raw_image_dataset = tf.data.TFRecordDataset('./data/train.tfrecord')\n",
    "image_feature_description = {\n",
    "    'image': tf.io.FixedLenFeature([], tf.string),\n",
    "    'label': tf.io.FixedLenFeature([], tf.int64),\n",
    "}\n",
    "\n",
    "def _parse_image_function(example_proto):\n",
    "    # Parse the input tf.Example proto using the dictionary above.\n",
    "    return tf.io.parse_single_example(example_proto, image_feature_description)\n",
    "\n",
    "parsed_image_dataset = raw_image_dataset.map(_parse_image_function)\n",
    "print(parsed_image_dataset)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/jpeg": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/jpeg": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/jpeg": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "for image_features in parsed_image_dataset.take(3):\n",
    "    image_raw = image_features['image'].numpy()\n",
    "    display.display(display.Image(data=image_raw))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
